package dane.brown.sql.checker.service.config;

import dane.brown.sql.checker.service.model.CheckRule;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

/**
 * CheckRule配置属性类，用于绑定Spring配置
 */
@Component
@ConfigurationProperties(prefix = "") // 配置前缀
public class CheckRuleProperties {

    // 存储所有检查规则的列表
    private List<CheckRule> rule = new ArrayList<>();
    // 关键：提供添加规则的方法（用于重复key时追加而非覆盖）
    public void addRule(CheckRule rule) {
        this.rule.add(rule);
    }

    // Getter和Setter
    public List<CheckRule> getRule() {
        return rule;
    }

    public void setRule(List<CheckRule> rule) {
        this.rule = rule;
    }
    
    // 保留getList方法以兼容现有代码
    public List<CheckRule> getList() {
        return rule;
    }
}